package com.frame.library.db;

import android.database.sqlite.SQLiteDatabase;

import com.frame.library.db.curd.QuerySupport;

import java.util.List;

/**
 * Added by Tom on 2024/06/28.
 */
public interface IDaoSupport<T> {
    void init(SQLiteDatabase database, Class<T> clazz);
    // 插入数据，返回的是影响的行数。
    long insert(T t);

    // 批量插入
    void insert(List<T> datas);
    // 查询所有
//    List<T> query() ;
    // 按照要求查询
    // 根据条件查询
    // daoSupport.querySupport().selection("age=?").selectionArgs("23").query();
    // 根据条件删除
    // daoSupport.delete("age=?", "23");
    // 根据条件更新 Person person = new Person("jack", 22);
    // daoSupport.update(person, "age=?", "13");

    // 获取专门查询的支持类 按照语句查询
    QuerySupport<T> querySupport();
    // 按照语句删除
    int delete(String whereClause, String... whereArgs);
    // 按照语句更新
    int update(T obj, String whereClause, String... whereArgs);
}
